This invention relates to three-dimensional figure data generator devices for generating three-dimensional figure data representing three-dimensional figures.
FIG. 10 is a block diagram showing a conventional CAD/CAM device including a three-dimensional figure data generator device. The forms of figures or the coordinate values for specifying the work paths of a numerically controlled machine tool (not shown), etc., are input via a keyboard 1, a mouse 2, or a tablet 3. An input processing unit 4 converts the data input via the keyboard 1, the mouse 2, or the tablet 3 into internal data. A three-dimensional view data setter unit 5 sets and edits three-dimensional view data including: projection data representing the directions along which the three-dimensional figures are projected; and display data representing display reference data concerning the display positions and domains of two-dimensional figures on the display screen obtained view the projections along the projection directions as indicated by the projection data. A three-dimensional view data memory 6 stores three-dimensional view data. A three-dimensional figure definer/editor unit 7 defines and edits the three-dimensional figure data of the three-dimensional figures. Three-dimensional figure data as used in this specification refers to figure data including three-dimensional coordinate information. A three-dimensional figure data memory 8 stores the three-dimensional figure data of the three-dimensional figures defined and edited by the three-dimensional figure definer/editor unit 7.
In response to the work instructions received from an external source, a work processing unit 9 generates the work information for working three-dimensional figure articles. A display processing unit 10 processes the display data (i.e., the data on the projected figures and the work paths of the numerically controlled machine tool (not shown)) displaced on the CRT display device 12. In response to the work information output from the work processing unit 9, a numerical control data generator unit 11 generates numerical control data for the numerically controlled machine tool, and a numerical control data file device 13 stores the numerical control data generated by the numerical control data generator unit 11.
Next, the operation of the conventional device is described. FIG. 11 is a flowchart showing the three-dimensional figure data generation procedure of the device of FIG. 10. The figure data of the pyramidal frustum as shown in FIG. 13 are given as the orthographic views of FIG. 12, to define the pyramidal frustum as the three-dimensional figure data.
At step S1101 in FIG. 11, three-dimensional view data are set. The three-dimensional view data represents: the projection directions for the three-dimensional figure, and the display positions and domains within the screen where the two-dimensional figures as obtained by the projections are shown. FIG. 14 shows the display domains and coordinate axes in accordance with the three-dimensional view data for projecting the figure along three distinct directions. The three projection directions are; Z-axis, Y-axis, and direction of the vector (1, 1, 1), The three views obtained by the projections are thus a top and side view, and a view as projected on the plane perpendicular to the vector (1, 1, 1).
Next the execution proceeds to step S1102, where it is determined whether or not the elements of the projected figure can be defined by coordinate plane data. Let us first take the example of the contour figure element 12a of the top view of the figure shown at (A) in FIG. 12. Then, at step S1102 it is determined whether or not the contour figure element 12a is definable by means of two-dimensional figure data on a plane defined by one of the equations: X=constant, Y=constant, or Z=constant. The contour figure element 12a lies on the plane: Z=0. The judgment at step S1102 is thus affirmative in this case, and the execution proceeds to step S1103. If the judgment at step S1102 is negative, the execution proceeds to step S1105 as described below.
At step S1103, the character information: Z=0 for specifying the coordinate plane on which the contour figure element 12a lies is input, and the execution proceeds to step S1104.
At step S1104, the values of X and Y coordinates of the four vertices of the contour figure element 12a are input. The mouse 2, etc., may be used for inputting the coordinate values together with the keyboard 1.
At the next step S1106, the three-dimensional figure data representing the contour figure element 12a input at step S1103 and step S1104 are stored in the three-dimensional figure data memory 8. Further, the two-dimensional figure elements obtained by projecting the contour figure element 12a on the three planes as shown in FIG. 14 are displayed on the screen as shown in FIG. 15.
At the next step S1107, it is determined whether or not all the figure elements of the three-dimensional figure are input. If the judgment is negative, the execution returns to step S1102 such that remaining data are input. If the judgment is affirmative, the execution is terminated.
Thus, after the figure data on the contour figure element 12a are input, the execution returns to step S1102 to input data on the contour figure element 12b and the ridge figure element 12c of FIG. 12. The data on the contour figure element 12b are input via the steps S1103 through S1106 in a manner similar to the above.
On the other hand, the ridge figure element 12c does not lie on a plane defined by one of the equations: X=constant, Y=constant, or Z=constant. Thus, the ridge figure element 12c cannot be defined by a coordinate plane data and two-dimensional figure data as described above, hence, the judgment at step S1102 is negative. Thus, the execution proceeds to step S1105, where the X, Y, and Z coordinate values of the two end points 16d and 16e (as shown in FIG. 16) are input. The data on the other ridges a shown in FIG. 17 are input in a similar manner.
FIG. 18 is a perspective view of a pyramidal frustum having curved side surfaces. In order to define the latticed curved surface 18e, the contour curves 17g and 17h and the section curve 17i shown in FIG. 17 are drawn on the display screen by the mouse 2, etc. by the way, the curve 17f is an auxiliary for defining the section of the curved surface 18e.
By repeatedly inputting the figure data representing each element of the three-dimensional figure as shown in the flowchart of FIG. 11, all the three-dimensional figure data are input. The data on the three-dimensional figure may further be edited. For example, the height of the pyramidal frustum may be modified from that shown in FIG. 19 to that shown in FIG. 20.
The modification is done as follows.
First, the contour figure element 12b of the top surface is designated, and the Z coordinate value for the coordinate plane carrying the contour figure element 12b is modified. Next, the ridge figure elements 12c, 12d, 12e, and 12f and the auxiliary curve 17f for the section of the curved surface 18e are designated and removed. The contour figure element 12b is thus modified into a contour figure element 20b (see FIG. 20). The ridge figure elements and the auxiliary curves are redefined to connect the contour figure element 12a and the newly obtained element 20b.
The above three-dimensional figure data generator device, however, has the following disadvantage. Since the operator must input, as part of the input data, the three-dimensional figure data such as the coordinate values within the three-dimensional space, he or she must first reconstruct the form of three-dimensional figure in his or her mind from the three orthographic views. Thus, the data input operation is prone to errors and is inefficient.
Thus, Japanese Laid-Open Patent (Kokai) No. 2-81271 teaches a device in which from two-dimensional figure data corresponding to the three orthographic views three dimensional figures are generated resulting from projections in predetermined perspective directions. This device, however, also suffers from the disadvantage that the operation is complicated since the end points of respective two-dimensional figures must be divided into groups and the correspondences between the respective end points must be established by the operator. Further, the shapes of the three-dimensional figure that can be processed are limited and three-dimensional objects having free curved surfaces can hardly be treated. Furthermore, the restrictions on the screen display are great. Namely, the screen display does not allow the selective display of the orthogonal two-dimensional figures or two-dimensional figure along the perspective projection, or the display region and position of the selected two-dimensional figures cannot be set freely by the operator.